package com.ruoyi.web.controller.oauth2;

import com.ruoyi.web.controller.oauth2.client.OAuth2Client;
import com.ruoyi.web.controller.oauth2.common.CommonResult;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.Map;

/**
 * OAuth 2.0 接口
 */
@RestController
@RequestMapping("/auth")
public class AuthController {

    @Resource
    private OAuth2Client oauth2Client;

    /**
     * 使用 code 访问令牌，获得访问令牌
     *
     * @param map  code授权码,redirectUri重定向URI
     * @return 访问令牌；注意，实际项目中，最好创建对应的 ResponseVO 类，只返回必要的字段
     */
    @PostMapping("/login-by-code")
    public CommonResult<Map<String,String>> loginByCode(@RequestBody Map<String,String> map) {

        return oauth2Client.postAccessToken(map.get("code"));
    }
}
